#pragma once

#include "object.h"

class Logger;

class Application :	public Object
{
public:
	Application();
	virtual ~Application();

	virtual void Initialize();
	virtual void run();
	virtual void Finalize();

	Logger* GetLogger() const { return m_pLogger; }
protected:
	virtual Logger* CreateLogger();
	Logger* m_pLogger;
};
